Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Multidimensional signal processing</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Multidimensional_signal_processing"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Multidimensional_signal_processing rootpage-Multidimensional_signal_processing skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Multidimensional signal processing</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><p>In <a href="Signal_processing" title="Signal processing">signal processing</a>, <b>multidimensional signal processing</b> covers all signal processing done using multidimensional signals and systems. While multidimensional signal processing is a subset of signal processing, it is unique in the sense that it deals specifically with data that can only be adequately detailed using more than one dimension. In m-D digital signal processing, useful data is sampled in more than one dimension. Examples of this are <a href="Image_processing" class="mw-redirect" title="Image processing">image processing</a> and multi-sensor radar detection. Both of these examples use multiple sensors to sample signals and form images based on the manipulation of these multiple signals.
Processing in multi-dimension (m-D) requires more complex algorithms, compared to the 1-D case, to handle calculations such as the <a href="Fast_Fourier_transform" title="Fast Fourier transform">fast Fourier transform</a> due to more degrees of freedom.<sup id="cite_ref-dudmer83_1-0" class="reference"><a href="#cite_note-dudmer83-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> In some cases, m-D signals and systems can be simplified into single dimension signal processing methods, if the considered systems are separable.
</p><p>Typically, multidimensional signal processing is directly associated with <a href="Digital_signal_processing" title="Digital signal processing">digital signal processing</a> because its complexity warrants the use of computer modelling and computation.<sup id="cite_ref-dudmer83_1-1" class="reference"><a href="#cite_note-dudmer83-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> A multidimensional signal is similar to a single dimensional signal as far as manipulations that can be performed, such as <a href="Sampling_(signal_processing)" title="Sampling (signal processing)">sampling</a>, <a href="Fourier_analysis" title="Fourier analysis">Fourier analysis</a>, and <a href="Filter_(signal_processing)" title="Filter (signal processing)">filtering</a>. The actual computations of these manipulations grow with the number of dimensions.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Sampling">Sampling</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Multidimensional_sampling" title="Multidimensional sampling">Multidimensional sampling</a></div>
<p>Multidimensional sampling requires different analysis than typical 1-D sampling. Single dimension sampling is executed by selecting points along a continuous line and storing the values of this data stream. In the case of multidimensional sampling, the data is selected utilizing a <a href="Lattice_(order)" title="Lattice (order)">lattice</a>, which is a "pattern" based on the sampling <a href="Vector_(mathematics_and_physics)" title="Vector (mathematics and physics)">vectors</a> of the m-D data set.<sup id="cite_ref-mer83_2-0" class="reference"><a href="#cite_note-mer83-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> These vectors can be single dimensional or multidimensional depending on the data and the application.<sup id="cite_ref-mer83_2-1" class="reference"><a href="#cite_note-mer83-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup>
</p><p>Multidimensional sampling is similar to classical sampling as it must adhere to the <a href="Nyquist%E2%80%93Shannon_sampling_theorem" title="Nyquist–Shannon sampling theorem">Nyquist–Shannon sampling theorem</a>. It is affected by <a href="Aliasing" title="Aliasing">aliasing</a> and considerations must be made for eventual Multidimensional Signal Reconstruction.
</p>
<div class="mw-heading mw-heading2"><h2 id="Fourier_Analysis">Fourier Analysis</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="Fourier_analysis" title="Fourier analysis">Fourier analysis</a>, <a href="Multidimensional_transform" title="Multidimensional transform">Multidimensional transform</a>, and <a href="Fast_Fourier_transform" title="Fast Fourier transform">Fast Fourier transform</a></div>
<p>A multidimensional signal can be represented in terms of sinusoidal components. This is typically done with a type of <a href="Fourier_transform" title="Fourier transform">Fourier transform</a>. The m-D <a href="Fourier_transform" title="Fourier transform">Fourier transform</a> transforms a signal from a signal domain representation to a <a href="Frequency_domain" title="Frequency domain">frequency domain</a> representation of the signal. In the case of digital processing, a discrete Fourier Transform (DFT) is utilized to transform a sampled signal domain representation into a frequency domain representation:
</p>
<dl><dd><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle X(k_{1},k_{2},\dots ,k_{m})=\sum _{n_{1}=-\infty }^{\infty }\sum _{n_{2}=-\infty }^{\infty }\cdots \sum _{n_{m}=-\infty }^{\infty }x(n_{1},n_{2},\dots ,n_{m})e^{-j2\pi k_{1}n_{1}}e^{-j2\pi k_{2}n_{2}}\cdots e^{-j2\pi k_{m}n_{m}}}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>X</mi>
<mo stretchy="false">(</mo>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<mo>,</mo>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>,</mo>
<mo>…<!-- … --></mo>
<mo>,</mo>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
</mrow>
</msub>
<mo stretchy="false">)</mo>
<mo>=</mo>
<munderover>
<mo>∑<!-- ∑ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mo>−<!-- − --></mo>
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
</munderover>
<munderover>
<mo>∑<!-- ∑ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>=</mo>
<mo>−<!-- − --></mo>
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
</munderover>
<mo>⋯<!-- ⋯ --></mo>
<munderover>
<mo>∑<!-- ∑ --></mo>
<mrow class="MJX-TeXAtom-ORD">
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
</mrow>
</msub>
<mo>=</mo>
<mo>−<!-- − --></mo>
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
<mrow class="MJX-TeXAtom-ORD">
<mi mathvariant="normal">∞<!-- ∞ --></mi>
</mrow>
</munderover>
<mi>x</mi>
<mo stretchy="false">(</mo>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<mo>,</mo>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<mo>,</mo>
<mo>…<!-- … --></mo>
<mo>,</mo>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
</mrow>
</msub>
<mo stretchy="false">)</mo>
<msup>
<mi>e</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mi>j</mi>
<mn>2</mn>
<mi>π<!-- π --></mi>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>1</mn>
</mrow>
</msub>
</mrow>
</msup>
<msup>
<mi>e</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mi>j</mi>
<mn>2</mn>
<mi>π<!-- π --></mi>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mn>2</mn>
</mrow>
</msub>
</mrow>
</msup>
<mo>⋯<!-- ⋯ --></mo>
<msup>
<mi>e</mi>
<mrow class="MJX-TeXAtom-ORD">
<mo>−<!-- − --></mo>
<mi>j</mi>
<mn>2</mn>
<mi>π<!-- π --></mi>
<msub>
<mi>k</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
</mrow>
</msub>
<msub>
<mi>n</mi>
<mrow class="MJX-TeXAtom-ORD">
<mi>m</mi>
</mrow>
</msub>
</mrow>
</msup>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle X(k_{1},k_{2},\dots ,k_{m})=\sum _{n_{1}=-\infty }^{\infty }\sum _{n_{2}=-\infty }^{\infty }\cdots \sum _{n_{m}=-\infty }^{\infty }x(n_{1},n_{2},\dots ,n_{m})e^{-j2\pi k_{1}n_{1}}e^{-j2\pi k_{2}n_{2}}\cdots e^{-j2\pi k_{m}n_{m}}}</annotation>
</semantics>
</math></span><img src="./a1e120bc38aefa78396bad1fffc3c04938c3a3f0.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -3.171ex; width:90.795ex; height:7.009ex;" alt="{\displaystyle X(k_{1},k_{2},\dots ,k_{m})=\sum _{n_{1}=-\infty }^{\infty }\sum _{n_{2}=-\infty }^{\infty }\cdots \sum _{n_{m}=-\infty }^{\infty }x(n_{1},n_{2},\dots ,n_{m})e^{-j2\pi k_{1}n_{1}}e^{-j2\pi k_{2}n_{2}}\cdots e^{-j2\pi k_{m}n_{m}}}" loading="lazy"></span></dd></dl>
<p>where <i>X</i> stands for the multidimensional discrete Fourier transform, <i>x</i> stands for the sampled time/space domain signal, <i>m</i> stands for the number of dimensions in the system, <i>n</i> are sample indices and <i>k</i> are frequency samples.<sup id="cite_ref-dudmer83_2_3-0" class="reference"><a href="#cite_note-dudmer83_2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
Computational complexity is usually the main concern when implementing any Fourier transform. For multidimensional signals, the complexity can be reduced by a number of different methods. The computation may be simplified if there is <a href="Independence" title="Independence">independence</a> between <a href="Variable_(mathematics)" title="Variable (mathematics)">variables</a> of the multidimensional signal.<sup id="cite_ref-dudmer83_2_3-1" class="reference"><a href="#cite_note-dudmer83_2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> In general, <a href="Fast_Fourier_transform" title="Fast Fourier transform">fast Fourier transforms</a> (FFTs), reduce the number of computations by a substantial factor. While there are a number of different implementations of this <a href="Algorithm" title="Algorithm">algorithm</a> for m-D signals, two often used variations are the vector-radix FFT and the row-column FFT.
</p>
<div class="mw-heading mw-heading2"><h2 id="Filtering">Filtering</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Filter_(signal_processing)" title="Filter (signal processing)">Filter (signal processing)</a></div>

<p>Filtering is an important part of any signal processing application. Similar to typical single dimension signal processing applications, there are varying degrees of complexity within filter design for a given system. M-D systems utilize <a href="Digital_filters" class="mw-redirect" title="Digital filters">digital filters</a> in many different applications. The actual implementation of these m-D filters can pose a design problem depending on whether the multidimensional polynomial is factorable.<sup id="cite_ref-dudmer83_2_3-2" class="reference"><a href="#cite_note-dudmer83_2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Typically, a <a href="Prototype" title="Prototype">prototype</a> filter is designed in a single dimension and that filter is <a href="Extrapolate" class="mw-redirect" title="Extrapolate">extrapolated</a> to m-D using a <a href="Map_(mathematics)" title="Map (mathematics)">mapping function</a>.<sup id="cite_ref-dudmer83_2_3-3" class="reference"><a href="#cite_note-dudmer83_2-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> One of the original mapping functions from 1-D to 2-D was the McClellan Transform.<sup id="cite_ref-mer78_4-0" class="reference"><a href="#cite_note-mer78-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Both <a href="Finite_impulse_response" title="Finite impulse response">FIR</a> and <a href="Infinite_impulse_response" title="Infinite impulse response">IIR</a> filters can be transformed to m-D, depending on the application and the mapping function.
</p>
<div class="mw-heading mw-heading2"><h2 id="Applicable_Fields">Applicable Fields</h2></div>
<ul><li><a href="Audio_signal_processing" title="Audio signal processing">Audio signal processing</a></li>
<li><a href="Image_processing" class="mw-redirect" title="Image processing">Image processing</a></li>
<li><a href="Towed_array_sonar" title="Towed array sonar">Towed array sonar</a></li>
<li><a href="X-ray_computed_tomography" class="mw-redirect" title="X-ray computed tomography">X-ray computed tomography</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-dudmer83-1"><span class="mw-cite-backlink">^ <a href="#cite_ref-dudmer83_1-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-dudmer83_1-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">D. Dudgeon and R. Mersereau, Multidimensional Digital Signal Processing, Prentice-Hall, First Edition, pp. 2, 1983.</span>
</li>
<li id="cite_note-mer83-2"><span class="mw-cite-backlink">^ <a href="#cite_ref-mer83_2-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-mer83_2-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">Mersereau, R.; Speake, T., "The processing of periodically sampled multidimensional signals," Acoustics, IEEE Transactions on Speech and Signal Processing, vol.31, no.1, pp.188-194, Feb 1983.</span>
</li>
<li id="cite_note-dudmer83_2-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-dudmer83_2_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-dudmer83_2_3-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-dudmer83_2_3-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-dudmer83_2_3-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text">D. Dudgeon and R. Mersereau, Multidimensional Digital Signal Processing, Prentice-Hall, First Edition, pp. 61,112, 1983.</span>
</li>
<li id="cite_note-mer78-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-mer78_4-0">^</a></b></span> <span class="reference-text">Mersereau, R.M.; Mecklenbrauker, W.; <a href="Thomas_F._Quatieri" title="Thomas F. Quatieri">Quatieri, T., Jr.</a>, "McClellan transformations for two-dimensional digital filtering-Part I: Design," IEEE Transactions on Circuits and Systems, vol.23, no.7, pp.405-414, Jul 1976.</span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><span class="noviewer" typeof="mw:File"></span> Media related to <a href="https://commons.wikimedia.org/wiki/Category:Multidimensional_signal_processing" class="extiw external" title="commons:Category:Multidimensional signal processing">Multidimensional signal processing</a> at Wikimedia Commons</li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2020-08-15" href="https://en.wikipedia.org/wiki/?title=Multidimensional_signal_processing&amp;oldid=973171851">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>